#ifndef __GfxDriver_VertexBuffer_h__
#define __GfxDriver_VertexBuffer_h__

#include "Core/BasicTypes.h"

namespace Orca {

	//--------------------------------------------------------------------------
	class VertexBuffer {

	public:
		virtual ~VertexBuffer() {}
		
		virtual uint32 getSizeInBytes() = 0;
		virtual unsigned int getAPIHandle() = 0;

		virtual uint8* requestUpload(bool discardCurrent) = 0;
		virtual void uploadToGPU() = 0;
	};

}

#endif	// __GfxDriver_VertexBuffer_h__